<?php

namespace App\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * TkAutomatedTasks
 *
 * @ORM\Table(name="tk_automated_tasks", indexes={@ORM\Index(name="flowId", columns={"flow_id"})})
 * @ORM\Entity
 */
class TkAutomatedTasks
{
    /**
     * @var int
     *
     * @ORM\Column(name="id", type="integer", nullable=false)
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="IDENTITY")
     */
    private $id;

    /**
     * @var string
     *
     * @ORM\Column(name="task_name", type="string", length=255, nullable=false, options={"comment"="自动化任务名称"})
     */
    private $taskName;

    /**
     * @var int
     *
     * @ORM\Column(name="task_status", type="smallint", nullable=false, options={"comment"="状态（0停用1启用）"})
     */
    private $taskStatus = '0';

    /**
     * @var int
     *
     * @ORM\Column(name="flow_id", type="integer", nullable=false, options={"comment"="工单类型ID"})
     */
    private $flowId = '0';

    /**
     * @var string
     *
     * @ORM\Column(name="flow_name", type="string", length=100, nullable=false, options={"comment"="工单类型名称"})
     */
    private $flowName;

    /**
     * @var string
     *
     * @ORM\Column(name="events", type="string", length=255, nullable=false)
     */
    private $events;

    /**
     * @var int
     *
     * @ORM\Column(name="task_prority", type="smallint", nullable=false, options={"default"="100","comment"="优先级（数字越小优先级越高）"})
     */
    private $taskPrority = '100';

    /**
     * @var string
     *
     * @ORM\Column(name="task_conditions", type="text", length=0, nullable=false, options={"comment"="自动化任务执行的条件"})
     */
    private $taskConditions;

    /**
     * @var string
     *
     * @ORM\Column(name="task_actions", type="text", length=0, nullable=false, options={"comment"="自动化任务执行的动作（json格式）"})
     */
    private $taskActions;

    /**
     * @var string
     *
     * @ORM\Column(name="remark", type="string", length=255, nullable=false, options={"comment"="备注"})
     */
    private $remark;

    /**
     * @var int
     *
     * @ORM\Column(name="create_user_id", type="integer", nullable=false, options={"comment"="创建人ID"})
     */
    private $createUserId = '0';

    /**
     * @var string
     *
     * @ORM\Column(name="create_user_name", type="string", length=50, nullable=false, options={"comment"="创建人名称"})
     */
    private $createUserName;

    /**
     * @var int
     *
     * @ORM\Column(name="create_time", type="integer", nullable=false, options={"comment"="创建时间"})
     */
    private $createTime = '0';

    /**
     * @var int
     *
     * @ORM\Column(name="update_user_id", type="integer", nullable=false, options={"comment"="更新人ID"})
     */
    private $updateUserId = '0';

    /**
     * @var string
     *
     * @ORM\Column(name="update_user_name", type="string", length=50, nullable=false, options={"comment"="更新人名称"})
     */
    private $updateUserName;

    /**
     * @var int
     *
     * @ORM\Column(name="update_time", type="integer", nullable=false, options={"comment"="更新时间"})
     */
    private $updateTime = '0';

    /**
     * @var int
     *
     * @ORM\Column(name="event_type", type="smallint", nullable=false, options={"comment"="事件类型（0为事件 1为时间）"})
     */
    private $eventType = '0';

    /**
     * @var string
     *
     * @ORM\Column(name="front_task_conditions", type="text", length=0, nullable=false, options={"comment"="自动化任务执行条件（前端显示，json格式）"})
     */
    private $frontTaskConditions;

    /**
     * @var string
     *
     * @ORM\Column(name="front_task_actions", type="text", length=0, nullable=false, options={"comment"="自动化任务执行的动作（前端显示、json格式）"})
     */
    private $frontTaskActions;

    /**
     * @var int
     *
     * @ORM\Column(name="event_time", type="integer", nullable=false, options={"comment"="事件时间"})
     */
    private $eventTime = '0';

    /**
     * @var string
     *
     * @ORM\Column(name="sms_template_ids", type="string", length=200, nullable=false, options={"comment"="短信模板ID 多个"})
     */
    private $smsTemplateIds;

    public function getId(): ?int
    {
        return $this->id;
    }

    public function getTaskName(): ?string
    {
        return $this->taskName;
    }

    public function setTaskName(string $taskName): self
    {
        $this->taskName = $taskName;

        return $this;
    }

    public function getTaskStatus(): ?int
    {
        return $this->taskStatus;
    }

    public function setTaskStatus(int $taskStatus): self
    {
        $this->taskStatus = $taskStatus;

        return $this;
    }

    public function getFlowId(): ?int
    {
        return $this->flowId;
    }

    public function setFlowId(int $flowId): self
    {
        $this->flowId = $flowId;

        return $this;
    }

    public function getFlowName(): ?string
    {
        return $this->flowName;
    }

    public function setFlowName(string $flowName): self
    {
        $this->flowName = $flowName;

        return $this;
    }

    public function getEvents(): ?string
    {
        return $this->events;
    }

    public function setEvents(string $events): self
    {
        $this->events = $events;

        return $this;
    }

    public function getTaskPrority(): ?int
    {
        return $this->taskPrority;
    }

    public function setTaskPrority(int $taskPrority): self
    {
        $this->taskPrority = $taskPrority;

        return $this;
    }

    public function getTaskConditions(): ?string
    {
        return $this->taskConditions;
    }

    public function setTaskConditions(string $taskConditions): self
    {
        $this->taskConditions = $taskConditions;

        return $this;
    }

    public function getTaskActions(): ?string
    {
        return $this->taskActions;
    }

    public function setTaskActions(string $taskActions): self
    {
        $this->taskActions = $taskActions;

        return $this;
    }

    public function getRemark(): ?string
    {
        return $this->remark;
    }

    public function setRemark(string $remark): self
    {
        $this->remark = $remark;

        return $this;
    }

    public function getCreateUserId(): ?int
    {
        return $this->createUserId;
    }

    public function setCreateUserId(int $createUserId): self
    {
        $this->createUserId = $createUserId;

        return $this;
    }

    public function getCreateUserName(): ?string
    {
        return $this->createUserName;
    }

    public function setCreateUserName(string $createUserName): self
    {
        $this->createUserName = $createUserName;

        return $this;
    }

    public function getCreateTime(): ?int
    {
        return $this->createTime;
    }

    public function setCreateTime(int $createTime): self
    {
        $this->createTime = $createTime;

        return $this;
    }

    public function getUpdateUserId(): ?int
    {
        return $this->updateUserId;
    }

    public function setUpdateUserId(int $updateUserId): self
    {
        $this->updateUserId = $updateUserId;

        return $this;
    }

    public function getUpdateUserName(): ?string
    {
        return $this->updateUserName;
    }

    public function setUpdateUserName(string $updateUserName): self
    {
        $this->updateUserName = $updateUserName;

        return $this;
    }

    public function getUpdateTime(): ?int
    {
        return $this->updateTime;
    }

    public function setUpdateTime(int $updateTime): self
    {
        $this->updateTime = $updateTime;

        return $this;
    }

    public function getEventType(): ?int
    {
        return $this->eventType;
    }

    public function setEventType(int $eventType): self
    {
        $this->eventType = $eventType;

        return $this;
    }

    public function getFrontTaskConditions(): ?string
    {
        return $this->frontTaskConditions;
    }

    public function setFrontTaskConditions(string $frontTaskConditions): self
    {
        $this->frontTaskConditions = $frontTaskConditions;

        return $this;
    }

    public function getFrontTaskActions(): ?string
    {
        return $this->frontTaskActions;
    }

    public function setFrontTaskActions(string $frontTaskActions): self
    {
        $this->frontTaskActions = $frontTaskActions;

        return $this;
    }

    public function getEventTime(): ?int
    {
        return $this->eventTime;
    }

    public function setEventTime(int $eventTime): self
    {
        $this->eventTime = $eventTime;

        return $this;
    }

    public function getSmsTemplateIds(): ?string
    {
        return $this->smsTemplateIds;
    }

    public function setSmsTemplateIds(string $smsTemplateIds): self
    {
        $this->smsTemplateIds = $smsTemplateIds;

        return $this;
    }


}
